package com.geek.homework.For;

/**
 * @author SunBingJian
 * @desc TODO
 * @date 2025/9/2
 */

/**
 * 1、猜数字的游戏(GuessNumber)
 * 游戏运行时产生一个1－100之间的随机整数，要求用户从控制台输入数字，
 * 若输入的数字比产生的数字小，则输出："太小了，再大一点！"；
 * 若输入的数字比产生的数字大，则输出："太大了，再小一点！"，
 * 若输入的数字和产生的数字相等，则输出："恭喜你猜对了！"，
 * 若用户猜了7次还未猜对，则输出："你太笨了，下次再来吧！"然后退出程序。
 *   提示：
 *    (1)、int num=(int)(Math.random()*100); //java.lang.Math;
 * 	  (2)、Scanner in=new Scanner(System.in); // java.util.Scanner;
 *          int n = in.nextInt();
 */

import java.util.Scanner;

public class For_work01 {
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        // 生成1-100之间的随机数
        int randomNumber = (int)(Math.random() * 100) + 1;
        int maxGuesses = 7; // 最大猜测次数
        boolean guessed = false; // 是否猜中
        
        System.out.println("欢迎来到猜数字游戏！");
        System.out.println("我已经想好了一个1-100之间的数字，你有7次机会猜中它！");
        
        // 使用for循环控制猜测次数
        for (int i = 1; i <= maxGuesses; i++) {
            //输入提示
            System.out.print("请输入你猜的数字（第" + i + "次）：");
            int userGuess = scanner.nextInt();

            //判断是否为目标数，猜对了就退出循环，猜错了就继续循环，并给出相应的提示
            if (userGuess == randomNumber) {
                System.out.println("恭喜你猜对了！");
                System.out.println("你用了" + i + "次就猜中了数字" + randomNumber);
                guessed = true;
                break; // 猜中了就退出循环
            } else if (userGuess < randomNumber) {
                System.out.println("太小了，再大一点！");
            } else {
                System.out.println("太大了，再小一点！");
            }
        }
        
        // 如果循环结束还没猜中
        if (!guessed) {
            System.out.println("你太笨了，下次再来吧！");
            System.out.println("正确答案是：" + randomNumber);
        }
        
        scanner.close();
    }
}
